It may be desirable to use virtual input devices to enter commands, data, or other information into electronic systems, such as a cellular phone, smart phone, personal data assistant (PDA), laptop computer, and so on. Such electronic devices implemented in relatively small sizes may have relatively small touch screens or mini-keyboards. Entering commands or data may be time consuming or error-prone. For example, cellular telephones, PDAs, or smart phones may allow e-mail communications, but entering messages using a small telephone touch pad may be difficult. For example, a PDA or a smart phone may have much of the functionality of a computer but may suffer from a tiny or non-existent keyboard.